package com.oa.pm.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.joneying.common.web.response.Resp;
import com.oa.core.PageResult;
import com.oa.pm.dto.LaborContractAddDTO;
import com.oa.pm.dto.LaborContractParamDTO;
import com.oa.pm.entity.LaborContract;
import com.baomidou.mybatisplus.service.IService;
import com.oa.pm.vo.LaborContractDetailsVO;
import com.oa.pm.vo.LaborContractsListVO;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;


/**
 * <p>
 * 劳动合同表 服务类
 * </p>
 *
 * @author syb123
 * @since 2019-01-22
 */
public interface ILaborContractService extends IService<LaborContract> {
    /**
     * 自定义分页
     * @param laborContractParamDTO LaborContractParamDTO
     * @return
     */
    PageResult<LaborContract> findList(LaborContractParamDTO laborContractParamDTO);

    /**
    * 根据id查询
    */
    LaborContract findLaborContractById(String id);


    Resp add(LaborContractAddDTO laborContractAddDTO);

    Resp edit(LaborContractAddDTO laborContractAddDTO);

    PageResult<LaborContractsListVO> findLaborContractList(Map condition);

    LaborContractDetailsVO findLaborContractDetails(String id);

    void export(Map condition, HttpServletResponse response);
}
